package com.DuoXianCheng.D11;

public class C01 implements Runnable {
    int ticket = 0;

    @Override
    public void run() {
        // 1.循环
        // 2.同步代码块
        // 3.共享数据是否到了末尾，如果到了末尾
        // 4.共享数据是否到了末尾，如果没到末尾
        while (true) {
            if (extracted()) break;
        }
    }

    private synchronized boolean extracted() {
        if (ticket == 1000) {
            return true;
        } else {
            // try {
            //     Thread.sleep(10);
            // } catch (InterruptedException e) {
            //     throw new RuntimeException(e);
            // }
            ticket++;
            System.out.println(Thread.currentThread().getName() + " 在卖第" + ticket + "张票！");
        }
        return false;
    }
}
